The Internet provides a vast amount of information. The individual pieces of information are often referred to as “network resources” or “network contents” and may have various formats, such as, without limitation, texts, audios, videos, images, web pages, documents, executables, etc. The network resources or contents are stored at many different sites, such as on computers and servers, in databases, etc., around the world. These different sites are communicatively linked to the Internet through various network infrastructures. Any person may access the publicly available network resources or contents via a suitable network device (e.g., a computer connected to the Internet).
However, due to the sheer amount of information available on the Internet, it is impractical as well as impossible for a person (e.g., a network user) to manually search throughout the Internet for specific pieces of information. Instead, most people rely on different types of computer-implemented tools to help them locate the desired network resources or contents. One of the most commonly and widely used computer-implemented tools is a search engine, such as the search engines provided by Yahoo!® Inc. (http://search.yahoo.com) and Google™ (http://www.google.com). To search for information relating to a specific subject matter on the Internet, a network user typically provides a short phrase describing the subject matter, often referred to as a “search query”, to a search engine. The search engine conducts a search based on the query phrase using various search algorithms and generates a search result that identifies network resources or contents that are most likely to be related to the search query. The network resources or contents are presented to the network user, often in the form of a list of links, each link being associated with a different document (e.g., a web page) that contains some of the identified network resources or contents. In particular embodiments, each link is in the form of a Uniform Resource Locator (URL) that specifies where the corresponding document is located and the mechanism for retrieving it. The network user is then able to click on the URL links to view the specific network resources or contents contained in the corresponding document as he wishes.
Sophisticated search engines implement many other functionalities in addition to merely identifying the network resources or contents as a part of the search process. For example, a search engine usually ranks the identified network resources or contents according to their relative degrees of relevance with respect to the search query, such that the network resources or contents that are relatively more relevant to the search query are ranked higher and consequently are presented to the network user before the network resources or contents that are relatively less relevant to the search query. The search engine may also provide a short summary of each of the identified network resources or contents.
There are continuous efforts to improve the qualities of the search results generated by the search engines. Accuracy, completeness, presentation order, and speed are but a few of the performance aspects of the search engines for improvement.